﻿using System.Collections.Generic;

namespace DataAccess.Repository
{
	public interface IMailRepository
	{
		bool CreateMail(Models.MailMessage theMailMessage);
		bool UpdateMail(Models.MailMessage theMailMessage);
		bool DeleteMail(int id);
		bool DeleteMail(List<int> ids);
		List<Models.MailMessage> GetRecievedMailList(string userName, int pageIndex, int pageSize, out int totalRecords);
		List<Models.MailMessage> GetSentMailList(string userName, int pageIndex, int pageSize, out int totalRecords);
		Models.MailMessage GetTheMailMessage(int id);
		bool DeleteOutboxMail(List<int> lstIDs);
		bool DeleteInboxMail(List<int> lstIDs, string reciever);
		bool SetRecievedMailIsRead(string reciever, int mailID, int isRead);
		int GetUnReadMailCount(string userName);
	}
}
